<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <script src="./js/vue.js"></script>
</head>

<body>

    <!-- 
        组件注册:
        Vue.component(组件名称,{
            data:组件数组,
            template : 组件模板内容
        })

        注意事项:
        1. data必须是一个函数
            data:function(){}
        2. 组件模板内容必须是单个根元素
            <button @click="handle">点击了{{count}}次</button>
        3. 组件模板内容可以是模板字符串
            - 模板字符串需要浏览器提供支持(ES6语法) => ``
    -->
    <div id="app">
        <div><button-counter></button-counter></div>
        <div><button-counter></button-counter></div>
        <div><button-counter></button-counter></div>
    </div>

    <script>
        // Vue.component('button-counter', {
        //     // 组件中的data必须是一个函数
        //     data: function () {
        //         return {
        //             count: 0
        //         }
        //     },
        //     // template: '<button @click="count++">点击了{{count}}次</button>',
        //     template: '<button @click="handle">点击了{{count}}次</button>',
        //     methods: {
        //         handle: function () {
        //             this.count += 2;
        //         }
        //     }
        // })
        //---------------------------
        Vue.component('button-counter', {
            // 组件中的data必须是一个函数
            data: function () {
                return {
                    count: 0
                }
            },
            template: `<div>
                <button @click="handle">点击了{{count}}次</button>
                <button>测试</button>
                </div>`,
            methods: {
                handle: function () {
                    this.count += 2;
                }
            }
        })
        var vm = new Vue({
            el: "#app",
            data: {

            }
        })


    </script>


</body>

</html>